package com.sdry.mapper.hpf;

import java.util.List;
import java.util.Map;

import com.sdry.model.hpf.LineSideLibraryOut;
import com.sdry.model.hpf.PickApply;
import com.sdry.model.jyy.Shedudetail;

/**
 * @ClassName: PickApplyMapper 
 * @Description:领料申请单Mapper
 * @Author hpf
 * @Date 2018年10月9日 下午2:51:06 
 * @version 1.0
 */
public interface PickApplyMapper {

	/**
	 * 条件查询领料申请单总数
	 * @param pickApply 查询条件
	 * @return
	 */
	Integer countPickApply(PickApply pickApply);
	
	/**
	 * 分页查询领料申请单
	 * @param map 查询条件
	 * @return
	 */
	List<PickApply> listPagePickApply(Map<String, Object> map);
	
	/**
	 * 条件查询所有领料申请单
	 * @param pickApply 查询条件
	 * @return
	 */
	List<PickApply> listAllPickApply(PickApply pickApply);
	
	/**
	 * 新增领料申请单
	 * @param pickApply 领料申请单实体
	 * @return
	 */
	Integer insertPickApply(PickApply pickApply);
	
	/**
	 * 修改领料申请单
	 * @param pickApply 领料申请单实体
	 * @return
	 */
	Integer updatePickApply(PickApply pickApply);
	
	/**
	 * 根据ID删除领料申请单
	 * @param pickID 领料申请单ID
	 * @return
	 */
	Integer deletePickApply(Long pickID);
	
	/**
	 * 根据ID查询领料申请单
	 * @param pickID 领料申请单ID
	 * @return
	 */
	PickApply findPickApplyByID(Long pickID);
	
	/**
	 * 审批领料申请单
	 * @param pickApply 领料申请单实体
	 * @return
	 */
	Integer approvalPickApply(PickApply pickApply);
	
	/**
	 * 根据日期查询排产单
	 * @param remark1 排产单日期
	 * @return
	 */
	Shedudetail findShedudetailByDate(String remark1);
	
	/**
	 * 查询相应排产单实际用料
	 * @param time
	 * @return
	 */
	List<LineSideLibraryOut> listActualQuantity(String time);
	
	PickApply findLastPickApply();
}
